package com.utils

import com.MyXMLWriter
import com.entity.PackPath
import org.dom4j.Document
import org.dom4j.io.OutputFormat
import java.nio.charset.StandardCharsets

object XMLUtils {

    fun saveXML(document: Document, outFile: PackPath) {
//        println(document.asXML())
        //设置文件编码
        val xmlFormat = OutputFormat()
        xmlFormat.encoding = StandardCharsets.UTF_8.name()
        // 设置换行
        xmlFormat.isNewlines = true
        // 生成缩进
        xmlFormat.setIndent(true)
        // 防止第二行 换行变空白
        xmlFormat.isNewLineAfterDeclaration = false

        // 解决自动闭合问题 <a/> 变为 <a></a>
//        xmlFormat.setExpandEmptyElements(true)
        // 使用4个空格进行缩进, 可以兼容文本编辑器
//        xmlFormat.setIndent(" ")

//        println("outPath = " + outPath)
        val writer = MyXMLWriter(outFile.outputStream(), xmlFormat)
//        writer.setEscapeText(false) // 关闭转义
        writer.write(document)
        writer.close()
    }

}
